This was changed in commit
8f15193b4 as a work-around for an ES6
class limitation, but now that Sources are GObject subclasses, we
no longer need to use that somewhat surprising pattern.
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1131
var ChatSource = HAVE_TP ? GObject.registerClass(
class ChatSource extends MessageTray.Source {
_init(account, conn, channel, contact, client) {
- super._init(contact.get_alias());
-
this._account = account;
this._contact = contact;
this._client = client;
+ super._init(contact.get_alias());
+
this.isChat = true;
this._pendingMessages = [];
this.notifications = [];
- this._policy = null;
+ this._policy = this._createPolicy();
}
get policy() {
- if (!this._policy)
- this._policy = this._createPolicy();
return this._policy;
}
var FdoNotificationDaemonSource = GObject.registerClass(
class FdoNotificationDaemonSource extends MessageTray.Source {
_init(title, pid, sender, appId) {
- super._init(title);
-
this.pid = pid;
this.app = this._getApp(appId);
+ super._init(title);
+
this.initialTitle = title;
if (this.app)
if (!app)
throw new InvalidAppError();
- super._init(app.get_name());
-
this._appId = appId;
this._app = app;
this._objectPath = objectPath;
+ super._init(app.get_name());
+
this._notifications = {};
this._notificationPending = false;
}
var WindowAttentionSource = GObject.registerClass(
class WindowAttentionSource extends MessageTray.Source {
_init(app, window) {
- super._init(app.get_name());
-
this._window = window;
this._app = app;
+ super._init(app.get_name());
+
this.signalIDs = [];
this.signalIDs.push(this._window.connect('notify::demands-attention',
this._sync.bind(this)));